From: Wei Liu Date: Wed, 31 May 2017 10:35:25 +0000 (+0100) Subject: Revert "tools/libxc: Drop broken xc_{get,set}_hvm_param() functions" X-Git-Tag: archive/raspbian/4.11.1-1+rpi1~1^2~66^2~2108 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/%22bookmarks://%22/%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22?a=commitdiff_plain;h=382329d44da8269b77d236a47ddb04747b7495a3;p=xen.git Revert "tools/libxc: Drop broken xc_{get,set}_hvm_param() functions" This reverts commit fa4583333ddba6afb7b07ff7eb4d16e1a6a7459c. QEMU build is broken by that patch. --- diff --git a/tools/libxc/include/xenctrl.h b/tools/libxc/include/xenctrl.h index 4d3f2ae9c8..1629f412dd 100644 --- a/tools/libxc/include/xenctrl.h +++ b/tools/libxc/include/xenctrl.h @@ -1660,6 +1660,10 @@ void xc_clear_last_error(xc_interface *xch); int xc_hvm_param_set(xc_interface *handle, domid_t dom, uint32_t param, uint64_t value); int xc_hvm_param_get(xc_interface *handle, domid_t dom, uint32_t param, uint64_t *value); +/* Deprecated: use xc_hvm_param_set/get() instead. */ +int xc_set_hvm_param(xc_interface *handle, domid_t dom, int param, unsigned long value); +int xc_get_hvm_param(xc_interface *handle, domid_t dom, int param, unsigned long *value); + /* HVM guest pass-through */ int xc_assign_device(xc_interface *xch, uint32_t domid, diff --git a/tools/libxc/xc_domain.c b/tools/libxc/xc_domain.c index b6194407b4..00909ad470 100644 --- a/tools/libxc/xc_domain.c +++ b/tools/libxc/xc_domain.c @@ -1455,6 +1455,23 @@ int xc_hvm_param_get(xc_interface *handle, domid_t dom, uint32_t param, uint64_t return rc; } +int xc_set_hvm_param(xc_interface *handle, domid_t dom, int param, unsigned long value) +{ + return xc_hvm_param_set(handle, dom, param, value); +} + +int xc_get_hvm_param(xc_interface *handle, domid_t dom, int param, unsigned long *value) +{ + uint64_t v; + int ret; + + ret = xc_hvm_param_get(handle, dom, param, &v); + if (ret < 0) + return ret; + *value = v; + return 0; +} + int xc_domain_setdebugging(xc_interface *xch, uint32_t domid, unsigned int enable) diff --git a/tools/xenpaging/xenpaging.c b/tools/xenpaging/xenpaging.c index 431a86b77c..d0571cabac 100644 --- a/tools/xenpaging/xenpaging.c +++ b/tools/xenpaging/xenpaging.c @@ -280,8 +280,7 @@ static struct xenpaging *xenpaging_init(int argc, char *argv[]) xentoollog_logger *dbg = NULL; char *p; int rc; - uint64_t ring_pfn; - unsigned long mmap_pfn; + unsigned long ring_pfn, mmap_pfn; /* Allocate memory */ paging = calloc(1, sizeof(struct xenpaging)); @@ -339,8 +338,8 @@ static struct xenpaging *xenpaging_init(int argc, char *argv[]) } /* Map the ring page */ - xc_hvm_param_get(xch, paging->vm_event.domain_id, - HVM_PARAM_PAGING_RING_PFN, &ring_pfn); + xc_get_hvm_param(xch, paging->vm_event.domain_id, + HVM_PARAM_PAGING_RING_PFN, &ring_pfn); mmap_pfn = ring_pfn; paging->vm_event.ring_page = xc_map_foreign_pages(xch, paging->vm_event.domain_id,